home *** CD-ROM | disk | FTP | other *** search
/ Aminet 24 / Aminet 24 (1998)(GTI - Schatztruhe)[!][Apr 1998].iso / Aminet / comm / tcp / resolve.lha / Resolve.amirx next >
Text File  |  1998-02-07  |  1KB  |  53 lines

  1. /* $VER: Resolve.amirx 1.2 (6/2/98) ©1998 Robin Cloutman
  2. ** requires AmIRC, Miami, and rexxdossupport.library
  3. ** Performs a resolve (lookup) on a nick/url with optional channel output
  4. */
  5. IF ~SHOW(L,'rexxsupport.library') THEN ADDLIB('rexxsupport.library',0,-30,0)
  6. IF ~SHOW(L,'rexxdossupport.library') THEN ADDLIB('rexxdossupport.library',0,-30,2)
  7. OPTIONS RESULTS
  8. PARSE ARG ARGS
  9. NAME="Resolve"
  10. TEMPLATE="URL/A,SAY/S,SHOW/K"
  11. READARGS(ARGS,TEMPLATE)
  12. IF(URL="?") THEN DO;CECHO("Usage:" TEMPLATE);EXIT;END
  13. IF(POS(".",url)=0) THEN DO
  14.     "USERHOST" URL
  15.     PARSE VAR RESULT . "@" URL
  16.     IF(URL="") THEN DO
  17.         CECHO("Unknown nick")
  18.         EXIT
  19.     END
  20. END
  21. FILENAME="PIPE:" || NAME || RANDOM(0,1000,TIME("S"))
  22. ADDRESS COMMAND "RUN Miami:MiamiResolve" URL ">" || FILENAME
  23. CALL OPEN(FILE,FILENAME,"READ")
  24. TEMP=READLN(FILE)
  25. PARSE VAR TEMP "host: " TEMP
  26. IF(TEMP~="")THEN DO
  27.     URL=TEMP "("
  28.     TEMP=READLN(FILE)
  29.     TEMP=READLN(FILE)
  30.     URL=URL || STRIP(TEMP,"B"," ") || ")"
  31.     CECHO(URL)
  32. END
  33. ELSE CECHO("(" || URL || ") not found")
  34. DO UNTIL EOF(FILE)
  35.     CALL READLN(FILE)
  36. END
  37. CLOSE(FILE)
  38. EXIT
  39.  
  40. CECHO:
  41. IF(SAY) THEN DO
  42.     IF(LASTTIME=TIME("S")) THEN CALL DELAY(25)
  43.     "SAY" '02'x || "«" || NAME || "»" || '02'x ARG(1)
  44.     LASTTIME=TIME("S")
  45. END
  46. ELSE IF(SHOW~="SHOW") THEN DO
  47.     IF(LASTTIME=TIME("S")) THEN CALL DELAY(25)
  48.     "SAY /msg" SHOW '02'x || "«" || NAME || "»" || '02'x ARG(1)
  49.     LASTTIME=TIME("S")
  50. END
  51. ELSE "ECHO P="d2c(27)"b«" || NAME || "» C=3" ARG(1)
  52. RETURN 0
  53.